﻿$(document).ready(function () {
    //Si algun link se ha marcado deshabilitado, entonces obtenemos el Handler para evitar su operacion
    $('.link-disable').each(function () {
        $(this).parent().bind('click', disableLink);
    });
});

//Desactivar el Link mientras se encuentra en operacion AJAX
function OnBegin_DLink() {
    var UpdateID = $(this).attr("data-ajax-update");
    $(UpdateID).text("");
    $(this).removeClass("button-link");
    $(this).addClass("link-disable");
    $(this).parent().bind('click', disableLink);
    $(this).attr("href", $(this).attr("href") + "?P=" + "probando");
}

function OnSucess_DLink(data, status, xhr) {
    //Si todo termino bien, regresamos el mensaje
    var UpdateID = $(this).attr("data-ajax-update");
    var desLink = data.Desactivar;
    $(UpdateID).addClass("result-success");
    $(UpdateID).text(data.Message);

    //Verificamos si los links se vuelven a cargar
    if (!desLink) {
        //Volvemos activar el boton
        $(this).removeClass("link-disable");
        $(this).addClass("button-link");
        $(this).parent().unbind('click', disableLink);
    }

    //Verificamos si debemos recargar la pagina
    if (data.ReloadPage) {
        location.reload();
    }
}

function OnError_DLink(xhr, status, error) {
    //Si ocurre un error, regresamos el mensaje de error
    var UpdateID = $(this).attr("data-ajax-update");
    $(UpdateID).addClass("result-error");
    $(UpdateID).text($.parseJSON(xhr.responseText));

    //Volvemos activar el boton
    $(this).removeClass("link-disable");
    $(this).addClass("button-link");
    $(this).parent().unbind('click', disableLink);
}

function disableLink(e) {
    //Cancela que ocurra el evento
    e.preventDefault();
    return false;
}